[% setvar title Use features of portable, free compilers and libraries %]
<div id="archive-notice">
    <h3>This file is part of the Perl 6 Archive</h3>
    <p>To see what is currently happening visit <a href="http://www.perl6.org/">http://www.perl6.org/</a></p>
</div>
<div class='pod'>
<a name='TITLE'></a><h1>TITLE</h1>
<p>Use features of portable, free compilers and libraries</p>
<a name='VERSION'></a><h1>VERSION</h1>
<pre>  Maintainer: John Tobey &lt;<a href='mailto:jtobey@john-edwin-tobey.org'>jtobey@john-edwin-tobey.org</a>&gt;
  Date: 5 Aug 2000
  Last Modified: 28 Sep 2000
  Mailing List: <a href='mailto:perl6-internals@perl.org'>perl6-internals@perl.org</a>
  Number: 46
  Version: 2
  Status: Retracted</pre>
<a name='NOTES ON RETRACTION'></a><h1>NOTES ON RETRACTION</h1>
<p>This generated only negative response.  Adherence to standards is a
better way to save the world.</p>
<a name='ABSTRACT'></a><h1>ABSTRACT</h1>
<p>There is no sane reason why *nix vendors continue to push proprietary
compilers and system libraries on their customers when better, free
replacements could be had for little effort.  Eventually, they will
realize this and start porting GNU Libc and Binutils, contributing
whatever unique features their current tools have to the GNU versions,
and shipping these packages with their systems.  Perl should take
aggressive advantage of these programs' features in anticipation of
eventually not having to support all the other cruft that's out there.</p>
<a name='DESCRIPTION'></a><h1>DESCRIPTION</h1>
<p>Sun beats AIX and loses to Linux for (practically) no other reason
than the intermediate quality of its GCC and GNU Binutils ports.  Bla,
bla, Glibc is portable, so port it.  Get with it, Sun!  Get with it,
HP!  Wake up, IBM!  Come on, SGI!  Hello, MSFT!  The GNU stuff is
nice.  It is free.  If it comes with the system, there is no licensing
war.</p>
<p>Think about how much it would cost the vendors to merge their features
into the GNU stuff.  Then think about how much developer effort would
be saved worldwide if all major systems shared a C library, compiler,
preprocessor, and linker.  Configure would be 5% its current size, if
it would exist at all.</p>
<p>We now have the chance to <b>SAVE THE WORLD</b> by giving these clowns a
serious incentive to do the <b>RIGHT THING</b>.</p>
<a name='IMPLEMENTATION'></a><h1>IMPLEMENTATION</h1>
<p>Perl 5 already takes advantage of some GNU CC features.  It should
henceforth consider anything below GCC 2 as <code>CRIPPLED_CC</code>.  Perl
works around limitations of Standard C library functions that GNU Libc
has already overcome.  <code>sprintf()</code> comes to mind.  <code>alloca()</code>,
<i>please</i> somebody tell me I can use <code>alloca()</code>!  We should stop
duplicating effort and take advantage of that code.  GNU CPP supports
varargs macros, so why not ship GNU CPP with perl?  There is no GPL
issue if it is only used in the build.</p>
<a name='ISSUES'></a><h1>ISSUES</h1>
<p>I have not looked at the BSD C library, so I don't know what to say
about it.  Is it portable?  Is it as featureful as GNU Libc?  Does it
perform as well or better?</p>
<a name='REFERENCES'></a><h1>REFERENCES</h1>
<p>The GNU C Library Reference Manual, Using and Porting GNU CC, GNU
Binutils manual.  Get 'em through www.gnu.org.</p>
</div>
